草庐IT

c++ - 默认安全描述符

全部标签

c++ - Windows服务创建文件的默认目录在哪里?

我创建了一个将字符串附加到文件的Windows服务。因此,它第一次创建一个文件,然后每10秒向其中追加一个字符串。所以,我的问题是Windows服务创建文件的默认目录在哪里,如果未指定。它似乎不是该服务的可执行目录,因为我没有看到那里正在创建任何文件。Google不再是我的伙伴。任何帮助都是无价的。谢谢。 最佳答案 在这方面,服务没有什么特别之处。如果指定相对路径,则它是相对于进程当前目录(也称为工作目录)的。这记录在案:NamingFiles,Paths,andNamespaces,FullyQualifiedvs.Relativ

c++ - mingw32-g++.exe : error: CreateProcess: No such file or directory again

这个问题在这里已经有了答案:YetAnotherMinGW"gcc:error:CreateProcess:Nosuchfileordirectory"(9个回答)关闭5年前。我找遍了,找不到解决办法。我用编译器安装了code::blocks版本。(Windows7的)每次尝试编译时,我都会收到NoSuchfileordirectory错误。我想可能是空格导致了问题,所以我单独下载并安装了ming到C:\GCC\MinGW-w64我进入了编译器设置/工具链可执行文件并定向了每条路径,因此它不会尝试从安装了code::blocks的程序文件中读取。发生同样的错误。我也试过直接进入bin文

c++ - 如何知道 GetPrivateProfileInt/String 失败的原因

我正在处理旧应用程序中的一段代码,在VisualStudio2008中使用C++。它尝试从INI文件中读取一些值,并且我正在尝试在该部分的情况下进行一些错误处理或文件中不存在我尝试读取的key。这是代码片段:intnValue=GetPrivateProfileInt(SECTION,KEY,-1,sINIFile);if(nValue==-1)//defaultvalue{intnLastError=GetLastError();if(nLastError!=0){//dosomething}}sINIFile包含我所需的INI文件的完整路径。经过一些测试,我发现GetLastErr

c - W7 和 Linux Mint 中不同的 sizeof(long) 值

IDE:代码::block13.12编译器:GNUGCC应用类型:控制台应用语言:C平台:W7和LinuxMint我为自定义语言编写了编译器和解释器,为Windows和Linux制作了可执行文件。编译器-显然-生成一个由解释器读取的代码文件。我想在Windows和Linux上都使用编译后的文件。因此,用Windows编译器创建的文件必须能被Linux解释器读取,反之亦然。我无法使兼容性正常工作。我发现在Windows中,sizeof(long)=4,在Linux中,sizeof(long)=8。由于编译器会将长整数写入输出文件,我认为大小差异是我遇到的(部分)问题。我查看了这个论坛,但

c - 调用 NdisAcquireSpinLock 后访问全局变量导致 IRQL_NOT_LESS_OR_EQUAL BSoD

我有一个NDIS过滤器驱动程序(WinPcap的更新)并在Windows1010586x64VM上对其进行了测试。我启用了验证器,它在启动Wireshark时导致IRQL_NOT_LESS_OR_EQUALBSoD(也就是使用我的驱动程序的功能)。这是转储:1:kd>!analyze-v**********************************************************************************BugcheckAnalysis******************************************************

c - mainCRTStartup 与 wmainCRTStartup

IunderstandthatVisualC++LinkerchoosesmainCRTStartup/wmainCRTStartupwhenoption/SUBSYSTEMissettoCONSOLE.我不明白的是链接器如何在两者之间进行选择。我在VC2015上用一个简单的程序测试过,如果wmain存在(连main也存在),就调用wmain。否则调用main。 最佳答案 链接器将尝试通过遍历objs的符号表来推断需要哪个入口点例程。它在_main之前搜索_wmain,这就是为什么选择前者,即使您同时拥有两者。然后链接器从您的默认l

c - 使 C 程序在 x 秒后重新启动

在Windows中,是否可以让用C编写的程序停止并在x秒后自行重新启动?如果是,如何实现?? 最佳答案 您可以通过让您的程序启动第二个程序来实现该目标,该程序的唯一功能是等待一段时间,然后再次启动您的第一个程序。在伪代码中,这个想法是:ProgramA:DowhatevertheprogramissupposedtodoLaunchprogramBexit.ProgramB:WaitpredeterminedtimeLaunchprogramAexit.我希望这能充分回答您的问题。 关于

windows - 尽管存在 client.rb,但 chef-client 使用默认配置值,没有错误

在全新安装的WindowsServer2012R2上出现此问题。我得到同样的结果,如果我只运行chef-client也没关系或者如果我运行chef-client-cC:\chef\client.rb.我已验证的client.rb位于默认路径,包含:log_level:debuglog_locationSTDOUTchef_server_url'https://chef.t93.us/organizations/'validation_client_name'-validator'validation_key'C:\chef\-validator.pem'ssl_ca_file'C:\c

c - WTS_CLIENT_ADDRESS 地址无法正确打印

我正在尝试获取登录到计算机的所有RDP连接的IP地址。我正在使用WTSEnumerateSessions和WTSQuerySessionInformation来检索指向包含地址的WTS_CLIENT_ADDRESS结构的指针。这是代码的一部分:WTSQuerySessionInformation(WTS_CURRENT_SERVER_HANDLE,SessionNo,WTSClientAddress,&ppBuffer,&pBytesReturned);address=(WTS_CLIENT_ADDRESS*)ppBuffer;if(AF_INET==address->AddressF

c - malloc() 并分配 : C code in run well in OS X; not in Win 8. 1

我编写的代码在OSX中没有任何问题,但在VS2013社区上运行时出现以下错误。Unhandledexceptionat0x001A3D22inMyproject.exe:0xC0000005:Accessviolationwritinglocation0x00000000.这是有问题的代码。原来的代码多了一些行,但是下面的代码自己产生了同样的错误。#includeintmain(void){int**p;p=(int**)malloc(sizeof(int*)*5000);for(inti=0;i这是发生错误时的状态。i和p为红色。namevaluetypei4118intp0x007